package jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

/**
 * JDBC java数据库链接
 */
public class Demo1 {
    public static void main(String[] args) throws Exception {
        /*
        使用JDBC链接数据库的大致步骤
        1.加载驱动(Class.forName())
        2.通过驱动管理器建立链接 DriverManaher.getConnection()
        3.通过连接对象创建执行语句对象Statement
        4.通过Statement执行SQL语句
        5.如果执行的是查询语句，则遍历结果集ResultSet
        6.关闭链接
         */

        /*
        //1.加载驱动(每种数据库驱动的类名和包名都是固定的)
        Class.forName("com.mysql.cj.jdbc.Driver");

        //2.通过驱动管理器建立链接 DriverManaher.getConnection()
        Connection connection = DriverManager.getConnection(//  本机地址：端口好/数据库
                "jdbc:mysql://localhost:3306/tedu?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&rewriteBatchedStatements=true",
                "root",
                "root");
        System.out.println("与数据库建立链接！");
        */

        Connection connection = DBUtil.getConnection();
        //3.通过连接对象创建执行语句对象Statement
        Statement statement = connection.createStatement();

        /*
        执行DDL语句
        创建一张表：
        CREATE TABLE user(
            id INT PRIMARY KEY AUTO_INCREMENT,
            username VARCHAR(32),
            password VARCHAR(32),
            nickname VARCHAR(32)，
            age INT(3)
        )
         */
        String sql = "CREATE TABLE user(\n" +
                "    id INT PRIMARY KEY AUTO_INCREMENT,\n" +
                "    username VARCHAR(32),\n" +
                "    password VARCHAR(32),\n" +
                "    nickname VARCHAR(32),\n" +
                "    age INT(3)\n" +
                ")";

        /*
        execute()方法可以执行任意SQL语句，返回一个boolean值
        当执行SQL后得到了一个查询结果
         */
        statement.execute(sql);
        System.out.println("执行完毕");
        connection.close();



















    }
}
